Service providers may offer a variety of services to customers. For example, a customer may be provided with the option of obtaining a wired telephone-based service, a wireless telephone-based service, a data networking-based service (wired or wireless), a television-based service, etc. To obtain such a service from the service provider, the customer may submit an order for the desired service. Once submitted, the service may be activated prior to the customer being able to use the service.
A current service provisioning architecture includes a Customer Administration System (CAS), a provisioning gateway, and a group of service enablers. In operation, the CAS may provide information for a service order to the provisioning gateway, which acts to provide the appropriate information to the appropriate service enablers for activating the ordered service. One of the main problems with the current service provisioning architecture is that the architecture does not support reuse of existing information. As a result, the CAS (and/or its administrator) has to collect all information that will be required for provisioning a service before the provisioning even starts. Thus, the provisioning of a service can be greatly delayed until all of the information can be collected.
In addition, the current provisioning gateway provides an interface that is based on concrete data models, where there is a different data model for each service enabler. Thus, when a new service enabler is provided in the network, network administrators have to update the provisioning gateway to include a new data model for the new service enabler, and notify the existing activation processes, the existing interfaces, the existing clients (e.g., order systems/processes), the CAS, the administration system, etc. of the new service enabler. Thus, introduction of new components to the current service provisioning architecture is a big undertaking.
The current service provisioning architecture provides schemas that specify what activation/provisioning information a specific service needs. However, current provisioning interfaces, such as Service Provisioning Markup Language (SPML) and Customer Administration Interface 3rd Generation (CAI3G), are abstract eXtensible Markup Language (XML)-based interfaces. Thus, even though the provisioning interface may remain the same, usage of the provisioning interface may require that a client that operates on the provisioning interface has to be changed in order to handle a new schema. As a result, the provisioning interfaces may be changed (e.g., internal code may be updated to support new provisioning targets).